/*! AGILE-BPM 版权所有，翻版必究 */
/******/ (function (modules) { // webpackBootstrap
/******/ 	// The module cache
/******/ 	var installedModules = {};
/******/
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/
/******/ 		// Check if module is in cache
/******/ 		if (installedModules[moduleId]) {
/******/ 			return installedModules[moduleId].exports;
			/******/
		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = installedModules[moduleId] = {
/******/ 			i: moduleId,
/******/ 			l: false,
/******/ 			exports: {}
			/******/
		};
/******/
/******/ 		// Execute the module function
/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ 		// Flag the module as loaded
/******/ 		module.l = true;
/******/
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
		/******/
	}
/******/
/******/
/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = modules;
/******/
/******/ 	// expose the module cache
/******/ 	__webpack_require__.c = installedModules;
/******/
/******/ 	// define getter function for harmony exports
/******/ 	__webpack_require__.d = function (exports, name, getter) {
/******/ 		if (!__webpack_require__.o(exports, name)) {
/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
			/******/
		}
		/******/
	};
/******/
/******/ 	// define __esModule on exports
/******/ 	__webpack_require__.r = function (exports) {
/******/ 		if (typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
			/******/
		}
/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
		/******/
	};
/******/
/******/ 	// create a fake namespace object
/******/ 	// mode & 1: value is a module id, require it
/******/ 	// mode & 2: merge all properties of value into the ns
/******/ 	// mode & 4: return value when already ns object
/******/ 	// mode & 8|1: behave like require
/******/ 	__webpack_require__.t = function (value, mode) {
/******/ 		if (mode & 1) value = __webpack_require__(value);
/******/ 		if (mode & 8) return value;
/******/ 		if ((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ 		var ns = Object.create(null);
/******/ 		__webpack_require__.r(ns);
/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ 		if (mode & 2 && typeof value != 'string') for (var key in value) __webpack_require__.d(ns, key, function (key) { return value[key]; }.bind(null, key));
/******/ 		return ns;
		/******/
	};
/******/
/******/ 	// getDefaultExport function for compatibility with non-harmony modules
/******/ 	__webpack_require__.n = function (module) {
/******/ 		var getter = module && module.__esModule ?
/******/ 			function getDefault() { return module['default']; } :
/******/ 			function getModuleExports() { return module; };
/******/ 		__webpack_require__.d(getter, 'a', getter);
/******/ 		return getter;
		/******/
	};
/******/
/******/ 	// Object.prototype.hasOwnProperty.call
/******/ 	__webpack_require__.o = function (object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ 	// __webpack_public_path__
/******/ 	__webpack_require__.p = "";
/******/
/******/
/******/ 	// Load entry module and return exports
/******/ 	return __webpack_require__(__webpack_require__.s = "./assets/entry/home/index.js");
	/******/
})
/************************************************************************/
/******/({

/***/ "./assets/entry/home/index.js":
/*!************************************!*\
  !*** ./assets/entry/home/index.js ***!
  \************************************/
/*! no static exports found */
/***/ (function (module, exports, __webpack_require__) {

			__webpack_require__(/*! ../../js/plugins/metisMenu/jquery.metisMenu.js */ "./assets/js/plugins/metisMenu/jquery.metisMenu.js");
			__webpack_require__(/*! ../../js/plugins/slimscroll/jquery.slimscroll.min.js */ "./assets/js/plugins/slimscroll/jquery.slimscroll.min.js");

			__webpack_require__(/*! ../../js/hplus.js */ "./assets/js/hplus.js");

			__webpack_require__(/*! ../../js/platform/home/index.js */ "./assets/js/platform/home/index.js");



			/***/
		}),

/***/ "./assets/js/hplus.js":
/*!****************************!*\
  !*** ./assets/js/hplus.js ***!
  \****************************/
/*! no static exports found */
/***/ (function (module, exports) {

			//自定义js

			//公共配置


			$(document).ready(function () {

				// MetsiMenu
				$('#side-menu').metisMenu();

				// 打开右侧边栏
				$('.right-sidebar-toggle').click(function () {
					$('#right-sidebar').toggleClass('sidebar-open');
				});

				// 右侧边栏使用slimscroll
				$('.sidebar-container').slimScroll({
					height: '100%',
					railOpacity: 0.4,
					wheelStep: 10
				});

				//固定菜单栏
				$(function () {
					$('.sidebar-collapse').slimScroll({
						height: '100%',
						railOpacity: 0.9,
						alwaysVisible: false
					});
				});


				// 菜单切换
				$('.navbar-minimalize').click(function () {
					$("body").toggleClass("mini-navbar");
					SmoothlyMenu(); businessTableList.html
				});


				// 侧边栏高度
				function fix_height() {
					var heightWithoutNavbar = $("body > #wrapper").height() - 61;
					$(".sidebard-panel").css("min-height", heightWithoutNavbar + "px");
				}
				fix_height();

				$(window).bind("load resize click scroll", function () {
					if (!$("body").hasClass('body-small')) {
						fix_height();
					}
				});

				//侧边栏滚动
				$(window).scroll(function () {
					if ($(window).scrollTop() > 0 && !$('body').hasClass('fixed-nav')) {
						$('#right-sidebar').addClass('sidebar-top');
					} else {
						$('#right-sidebar').removeClass('sidebar-top');
					}
				});

				$('.full-height-scroll').slimScroll({
					height: '100%'
				});

				$('#side-menu>li').click(function () {
					if ($('body').hasClass('mini-navbar')) {
						NavToggle();
					}
				});
				$('#side-menu>li li a').click(function () {
					if ($(window).width() < 769) {
						NavToggle();
					}
				});

				$('.nav-close').click(NavToggle);

				//ios浏览器兼容性处理
				if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
					$('#content-main').css('overflow-y', 'auto');
				}

			});

			$(window).bind("load resize", function () {
				if ($(this).width() < 769) {
					$('body').addClass('mini-navbar');
					$('.navbar-static-side').fadeIn();
				}
			});

			function NavToggle() {
				$('.navbar-minimalize').trigger('click');
			}

			function SmoothlyMenu() {
				if (!$('body').hasClass('mini-navbar')) {
					$('#side-menu').hide();
					setTimeout(
						function () {
							$('#side-menu').fadeIn(500);
						}, 100);
				} else if ($('body').hasClass('fixed-sidebar')) {
					$('#side-menu').hide();
					setTimeout(
						function () {
							$('#side-menu').fadeIn(500);
						}, 300);
				} else {
					$('#side-menu').removeAttr('style');
				}
			}


			//判断浏览器是否支持html5本地存储
			function localStorageSupport() {
				return (('localStorage' in window) && window['localStorage'] !== null)
			}


			/***/
		}),

/***/ "./assets/js/platform/home/index.js":
/*!******************************************!*\
  !*** ./assets/js/platform/home/index.js ***!
  \******************************************/
/*! no static exports found */
/***/ (function (module, exports) {

			var app = angular.module('app', ['base']);
			app.controller("indexCtrl", ['$scope', 'baseService', function (scope, baseService) {
				scope.getProjectMsg = function () {
					scope.projectName = localStorage.getItem("xiangmuName")
					var denfer = baseService.get(__ctx + "/sys/TProjectInfo/findlist", {});
					denfer.then(
						function (result) {
							scope.projectMsg = result;
						}
					)

				}

				scope.queryProjectState = function (project) {
					localStorage.setItem("xiangmuId", project.id)
					localStorage.setItem("xiangmuName", project.project_name)
					window.location.href = "../../index.html"
					// var denfer = baseService.get(__ctx + "/sys/xmprocedure/gettypetwolist?projectid=" + project.id);
					// denfer.then(
					// 	function (result) {
					// 		if (result.code == 200) {
					// 			var ifrObj = document.querySelector("iframe").contentWindow.document
					// 			var targetIfr = ifrObj.getElementById("myproject")
					// 			targetIfr.contentWindow.aabb(result.data)
					// 			console.log("data=>", result.data);
					// 		}

					// 	}
					// )
				}

				scope.getUserMsg = function () {
					var denfer = baseService.post(__ctx + "/org/userResource/userMsg", {});
					denfer.then(
						function (result) {
							if (!result.isOk && result.code === "401") {
								window.location = "login.html";
								return;
							} else if (!result.isOk) {
								$.Toast.error(result.msg);
							}

							scope.userMsg = FastJson.format(result).data;
							scope.userRes = scope.userMsg.userMenuList;

							//将子系统url前缀添加至top中
							top.subSystem = {};
							for (var i = 0, s; s = scope.userMsg.subsystemList[i++];) {
								top.subSystem[s.alias] = s;
							}

							//将权限放到缓存中
							if (window.localStorage) {
								window.localStorage.setItem('buttonPermision', JSON.stringify(scope.userMsg.buttonPermision));
								console.info(window.localStorage.buttonPermision);
							}

							var menuId = $.getCookie("default_menu");
							var currentMenu = null;
							//获取cookie中的当前菜单
							if (menuId && scope.userRes) {
								for (var i = 0, m; m = scope.userRes[i++];) {
									if (m.id == menuId) {
										currentMenu = m;
										break;
									}
								}
							}

							if (!currentMenu && scope.userRes) {
								currentMenu = scope.userRes[0];
							}
							scope.topClick(currentMenu);

						}, function (aa) {

						}
					)
				}
				scope.getProjectMsg();
				scope.getUserMsg();

				scope.topClick = function (topMenu) {
					if (!topMenu) return;
					if (topMenu.children && topMenu.children.length > 0) {
						//记录打开的主菜单
						$.setCookie("default_menu", topMenu.id);
						scope.memus = topMenu.children;
					}
					for (var i = 0; i < scope.userRes.length; i++) {
						var obj = scope.userRes[i];
						obj.active = (topMenu == obj) ? "menuActive" : "";
					}
					window.setTimeout(function () {
						$('#side-menu').metisMenu();
					}, 10)
				}
				//左边菜单栏
				scope.showThreeSonMenus = function (menu, e) {
					$(".my_two_menu_three").css("top", e.target.offsetTop)
					$(".my_two_menu_three").css("display", "block")
					scope.threeMenu = menu.children
				}
				scope.showSonMenu = function (menu, e) {
					scope.childrenMemus = menu;
					$(".my_two_menu").css("top", e.target.getBoundingClientRect().top)
					$(".my_two_menu").css("display", "block")
					$(".my_two_menu_three").css("display", "none")
				}
				scope.showSonMenus = function () {
					$(".my_two_menu").css("display", "block")
				}
				scope.hiddenMenu = function (e) {
					$(".my_two_menu").css("display", "none")
				}
				//项目选择
				var ifMenuShow = false
				scope.hiddMent = function () {
					if (ifMenuShow == true) {
						$(".showMenu").slideUp(300)
						ifMenuShow = false
					}
				}
				scope.showMenu = function (e) {
					//调用iframe方法
					// var s = ""
					// var aa = document.querySelector("iframe").contentWindow.document
					// var b = aa.getElementById("myproject")
					// b.contentWindow.aabb(s)
					// console.log("???", b)
					// var s = "xinshu"
					// var docObj = document.querySelector("iframe").contentWindow.document
					// var iframeFun = docObj.getElementById("myproject")
					// iframeFun.document.getElementById("myproject").aabb('aaa');
					if (ifMenuShow == false) {
						// $(".showMenu").css("display", "block")
						$(".showMenu").slideDown(300)
						ifMenuShow = true
					} else if (ifMenuShow == true) {
						// $(".showMenu").css("display", "none")
						$(".showMenu").slideUp(300)
						ifMenuShow = false
					}
					event.stopPropagation();
				}
				scope.menuClick = function (menu, noReload) {
					if (!menu.url) {
						return;
					}

					if (menu.url.indexOf("http") != -1) {
						noReload = true; //跨域的都不支持reload
					}

					var hasOpened = false;
					for (var i = 0, m; m = scope.openedMenu[i++];) {
						m.active = "";
						if (m == menu) {
							if (!noReload) scope.relaodIfream(menu)
							hasOpened = true;
						}
					}
					menu.active = "active";
					if (!hasOpened) {
						scope.openedMenu.push(menu);
					}
					if (noReload) return;
					window.setTimeout(function () {
						var $frame = $("#" + menu.id + "iframe");
						if (!$frame[0]) return;
						/*var index = layer.load();
						console.info(" layer load()" + index);
						$frame.load(function (){
							console.info(" layer close()"+ index);
							layer.close(index); 
								});*/
					}, 2)
				}

				scope.relaodIfream = function (menu) {
					// debugger;
					var $frame = $("#" + menu.id + "iframe");

					$frame[0].contentWindow.location.reload();
				}

				scope.closeTab = function (menu) {
					var idx = 0;
					for (var i = 0, m; m = scope.openedMenu[i++];) {
						if (m == menu) {
							idx = i;
							break;
						}
					}
					if (menu.active == "active") scope.openedMenu[idx - 2].active = "active";

					var $frame = $("#" + menu.id + "iframe");
					try {
						$frame[0].contentWindow.document.write('');
						$frame[0].contentWindow.close();
					} catch (e) {
					}
					scope.openedMenu.splice(idx - 1, 1);
				}

				scope.getEnviroment = function () {
					if (!scope.userMsg) return "";

					if (scope.userMsg.currentEnviroment === "DEV") return " | 开发";
					if (scope.userMsg.currentEnviroment === "SIT") return " | 测试";
					if (scope.userMsg.currentEnviroment === "UAT") return " | 用户测试";
					if (scope.userMsg.currentEnviroment === "GRAY") return " | 灰度";
					return "";
				}

				scope.changeCurrentSystem = function (system) {
					if (system.url) {
						window.open(system.url, system.openType || "_top");
						return;
					}

					var get = baseService.get(__ctx + "/userResource/changeSystem?systemAlias=" + system.alias);
					$.getResultData(get, function () {
						window.location = "index.html";
					})
				}
				scope.changeCurrentOrg = function (orgId) {
					var get = baseService.get(__ctx + "/userResource/changeOrg?orgId=" + orgId);
					$.getResultData(get, function () {
						window.location = "index.html";
					})
				}

				scope.logout = function (systemId) {
					var get = baseService.get(__ctx + "/logout");
					$.getResultData(get, function () {
						window.location = "login.html";
					})
				}

				scope.closeAll = function () {
					scope.openedMenu = [{ id: "indexpage", active: "active", name: "首页", noclose: true, url: "sys/workbenchPanel/myWorkbench.html" }];
				}
				scope.cloaseOther = function () {
					var array = [{ id: "indexpage", active: "active", name: "首页", noclose: true, url: "sys/workbenchPanel/myWorkbench.html" }];
					for (var i = 0, item; item = scope.openedMenu[i++];) {
						if (item.active === "active" && item.name !== "首页") {
							array.push(item);
						}
					}
					scope.openedMenu = array;
				}

				scope.closeOthers = function () {
					var array = [{ id: "indexpage", active: "active", name: "首页", noclose: true, url: "sys/workbenchPanel/myWorkbench.html" }];
					for (var i = 0, item; item = scope.openedMenu[i++];) {
						if (item.active === "active" && item.name !== "首页") {
							array.push(item);
						}
					}
					scope.openedMenu = array;
				}

				scope.scrollCurrent = function () {
					for (var i = 0, item; item = scope.openedMenu[i++];) {
						if (item.active === "active") {
							scrollToTab($("#" + item.id))
							return;
						}
					}
				}

				scope.openedMenu = [{ id: "indexpage", active: "active", name: "首页", noclose: true, url: "sys/workbenchPanel/myWorkbench.html" }];
				// 左移按扭
				$('.J_tabLeft').on('click', scrollTabLeft);
				// 右移按扭
				$('.J_tabRight').on('click', scrollTabRight);


				// url特殊处理
				window.setTimeout(function () {
					$("#indexpageiframe").attr("src", "sys/workbenchPanel/myWorkbench.html");
				}, 10)
				var userInfoTab = {
					id: "userInfo",
					name: "个人信息",
					icon: 'fa-user',
					closable: true
				};
				scope.userInfo = function () {
					userInfoTab.url = 'org/user/userDetail.html?id=' + scope.userMsg.user.id
					scope.menuClick(userInfoTab);
				}
				var editPassworldTab = {
					id: "editPassworld",
					name: "修改个人密码",
					icon: 'fa-key',
					closable: true
				};
				scope.editPassworld = function () {
					editPassworldTab.url = 'org/user/userPasswordEdit.html?id=' + scope.userMsg.user.id
					scope.menuClick(editPassworldTab);
				}
				var editUserInfoTab = {
					id: "editUserInfo",
					name: "个人信息编辑",
					icon: 'fa-info',
					closable: true
				};
				scope.editUserInfo = function () {
					editUserInfoTab.url = 'org/user/userEditInformation.html?id=' + scope.userMsg.user.id
					scope.menuClick(editUserInfoTab);
				}

				var roleInfoTab = {
					id: "roleInfo",
					name: "角色维护",
					icon: 'fa-user',
					closable: true
				};
				scope.roleInfo = function () {
					roleInfoTab.url = 'form/formCustSql/view/formCustSqlView.html?code=uRole'
					scope.menuClick(roleInfoTab);
				}



				var authMangeTab = {
					id: "authMange",
					name: "权限管理",
					icon: 'fa-users',
					closable: true
				};
				scope.authMange = function () {
					authMangeTab.url = 'form/formCustSql/view/formCustSqlView.html?code=mMenuFunction'
					scope.menuClick(authMangeTab);
				}

				var paramMangeTab = {
					id: "paramMange",
					name: "参数设置",
					icon: 'fa-users',
					closable: true
				};
				scope.paramMange = function () {
					paramMangeTab.url = 'form/formCustSql/view/formCustSqlView.html?code=parameter'
					scope.menuClick(paramMangeTab);
				}

				var acivityMangeTab = {
					id: "acivityMange",
					name: "工作流设置",
					icon: 'fa-exchange',
					closable: true
				};
				scope.acivityMange = function () {
					acivityMangeTab.url = 'form/formCustSql/view/formCustSqlView.html?code=parameter'
					scope.menuClick(acivityMangeTab);
				}


				var jobchangeMangeTab = {
					id: "jobchangeMange",
					name: "工作流设置",
					icon: 'fa-paper-plane',
					closable: true
				};
				scope.jobchangeMange = function () {
					jobchangeMangeTab.url = 'form/formCustSql/view/formCustSqlView.html?code=parameter'
					scope.menuClick(jobchangeMangeTab);
				}


			}])
			var onlyOpenTitle = "首页";
			//当这个窗口出现在iframe里，表示其目前已经timeout，需要把外面的框架窗口也重定向登录页面
			if (top != window) {
				top.location = '/index.html';
			}

			//tab:{name:"tab名字",url:url,id:"标识"}

			window.addTab = function (tab, fullTab) {
				var scope = angular.element($("[ng-controller='indexCtrl']")).scope();
				scope.$apply(function () {
					scope.menuClick(tab);
				});

				if (fullTab) {
					window.setTimeout(function () {
						$(".navbar-minimalize")[0].click();
					}, 10)
				}
			}


			function calSumWidth(elements) {
				var width = 0;
				$(elements).each(function () {
					width += $(this).outerWidth(true);
				});
				return width;
			}

			//滚动到指定选项卡
			function scrollToTab(element) {
				var marginLeftVal = calSumWidth($(element).prevAll()), marginRightVal = calSumWidth($(element).nextAll());
				// 可视区域非tab宽度
				var tabOuterWidth = calSumWidth($(".content-tabs").children().not(".J_menuTabs"));
				//可视区域tab宽度
				var visibleWidth = $(".content-tabs").outerWidth(true) - tabOuterWidth;
				//实际滚动宽度
				var scrollVal = 0;
				if ($(".page-tabs-content").outerWidth() < visibleWidth) {
					scrollVal = 0;
				} else if (marginRightVal <= (visibleWidth - $(element).outerWidth(true) - $(element).next().outerWidth(true))) {
					if ((visibleWidth - $(element).next().outerWidth(true)) > marginRightVal) {
						scrollVal = marginLeftVal;
						var tabElement = element;
						while ((scrollVal - $(tabElement).outerWidth()) > ($(".page-tabs-content").outerWidth() - visibleWidth)) {
							scrollVal -= $(tabElement).prev().outerWidth();
							tabElement = $(tabElement).prev();
						}
					}
				} else if (marginLeftVal > (visibleWidth - $(element).outerWidth(true) - $(element).prev().outerWidth(true))) {
					scrollVal = marginLeftVal - $(element).prev().outerWidth(true);
				}
				$('.page-tabs-content').animate({
					marginLeft: 0 - scrollVal + 'px'
				}, "fast");
			}

			//查看左侧隐藏的选项卡
			function scrollTabLeft() {
				var marginLeftVal = Math.abs(parseInt($('.page-tabs-content').css('margin-left')));
				// 可视区域非tab宽度
				var tabOuterWidth = calSumWidth($(".content-tabs").children().not(".J_menuTabs"));
				//可视区域tab宽度
				var visibleWidth = $(".content-tabs").outerWidth(true) - tabOuterWidth;
				//实际滚动宽度
				var scrollVal = 0;
				if ($(".page-tabs-content").width() < visibleWidth) {
					return false;
				} else {
					var tabElement = $(".J_menuTab:first");
					var offsetVal = 0;
					while ((offsetVal + $(tabElement).outerWidth(true)) <= marginLeftVal) {//找到离当前tab最近的元素
						offsetVal += $(tabElement).outerWidth(true);
						tabElement = $(tabElement).next();
					}
					offsetVal = 0;
					if (calSumWidth($(tabElement).prevAll()) > visibleWidth) {
						while ((offsetVal + $(tabElement).outerWidth(true)) < (visibleWidth) && tabElement.length > 0) {
							offsetVal += $(tabElement).outerWidth(true);
							tabElement = $(tabElement).prev();
						}
						scrollVal = calSumWidth($(tabElement).prevAll());
					}
				}
				$('.page-tabs-content').animate({
					marginLeft: 0 - scrollVal + 'px'
				}, "fast");
			}
			//查看右侧隐藏的选项卡
			function scrollTabRight() {
				var marginLeftVal = Math.abs(parseInt($('.page-tabs-content').css('margin-left')));
				// 可视区域非tab宽度
				var tabOuterWidth = calSumWidth($(".content-tabs").children().not(".J_menuTabs"));
				//可视区域tab宽度
				var visibleWidth = $(".content-tabs").outerWidth(true) - tabOuterWidth;
				//实际滚动宽度
				var scrollVal = 0;
				if ($(".page-tabs-content").width() < visibleWidth) {
					return false;
				} else {
					var tabElement = $(".J_menuTab:first");
					var offsetVal = 0;
					while ((offsetVal + $(tabElement).outerWidth(true)) <= marginLeftVal) {//找到离当前tab最近的元素
						offsetVal += $(tabElement).outerWidth(true);
						tabElement = $(tabElement).next();
					}
					offsetVal = 0;
					while ((offsetVal + $(tabElement).outerWidth(true)) < (visibleWidth) && tabElement.length > 0) {
						offsetVal += $(tabElement).outerWidth(true);
						tabElement = $(tabElement).next();
					}
					scrollVal = calSumWidth($(tabElement).prevAll());
					if (scrollVal > 0) {
						$('.page-tabs-content').animate({
							marginLeft: 0 - scrollVal + 'px'
						}, "fast");
					}
				}
			}

			/***/
		}),

/***/ "./assets/js/plugins/metisMenu/jquery.metisMenu.js":
/*!*********************************************************!*\
  !*** ./assets/js/plugins/metisMenu/jquery.metisMenu.js ***!
  \*********************************************************/
/*! no static exports found */
/***/ (function (module, exports) {

			/*
			 * metismenu - v1.1.3
			 * Easy menu jQuery plugin for Twitter Bootstrap 3
			 * https://github.com/onokumus/metisMenu
			 *
			 * Made by Osman Nuri Okumus
			 * Under MIT License
			 */
			; (function ($, window, document, undefined) {

				var pluginName = "metisMenu",
					defaults = {
						toggle: true,
						doubleTapToGo: false
					};

				function Plugin(element, options) {
					this.element = $(element);
					this.settings = $.extend({}, defaults, options);
					this._defaults = defaults;
					this._name = pluginName;
					this.init();
				}

				Plugin.prototype = {
					init: function () {

						var $this = this.element,
							$toggle = this.settings.toggle,
							obj = this;

						if (this.isIE() <= 9) {
							$this.find("li.active").has("ul").children("ul").collapse("show");
							$this.find("li").not(".active").has("ul").children("ul").collapse("hide");
						} else {
							$this.find("li.active").has("ul").children("ul").addClass("collapse in");
							$this.find("li").not(".active").has("ul").children("ul").addClass("collapse");
						}

						//add the "doubleTapToGo" class to active items if needed
						if (obj.settings.doubleTapToGo) {
							$this.find("li.active").has("ul").children("a").addClass("doubleTapToGo");
						}

						$this.find("li").has("ul").children("a").on("click" + "." + pluginName, function (e) {
							e.preventDefault();

							//Do we need to enable the double tap
							if (obj.settings.doubleTapToGo) {

								//if we hit a second time on the link and the href is valid, navigate to that url
								if (obj.doubleTapToGo($(this)) && $(this).attr("href") !== "#" && $(this).attr("href") !== "") {
									e.stopPropagation();
									document.location = $(this).attr("href");
									return;
								}
							}

							$(this).parent("li").toggleClass("active").children("ul").collapse("toggle");

							if ($toggle) {
								$(this).parent("li").siblings().removeClass("active").children("ul.in").collapse("hide");
							}

						});
					},

					isIE: function () { //https://gist.github.com/padolsey/527683
						var undef,
							v = 3,
							div = document.createElement("div"),
							all = div.getElementsByTagName("i");

						while (
							div.innerHTML = "<!--[if gt IE " + (++v) + "]><i></i><![endif]-->",
							all[0]
						) {
							return v > 4 ? v : undef;
						}
					},

					//Enable the link on the second click.
					doubleTapToGo: function (elem) {
						var $this = this.element;

						//if the class "doubleTapToGo" exists, remove it and return
						if (elem.hasClass("doubleTapToGo")) {
							elem.removeClass("doubleTapToGo");
							return true;
						}

						//does not exists, add a new class and return false
						if (elem.parent().children("ul").length) {
							//first remove all other class
							$this.find(".doubleTapToGo").removeClass("doubleTapToGo");
							//add the class on the current element
							elem.addClass("doubleTapToGo");
							return false;
						}
					},
					remove: function () {
						this.element.off("." + pluginName);
						this.element.removeData(pluginName);
					}

				};

				$.fn[pluginName] = function (options) {
					this.each(function () {
						var el = $(this);
						if (el.data(pluginName)) {
							el.data(pluginName).remove();
						}
						el.data(pluginName, new Plugin(this, options));
					});
					return this;
				};

			})(jQuery, window, document);


			/***/
		}),

/***/ "./assets/js/plugins/slimscroll/jquery.slimscroll.min.js":
/*!***************************************************************!*\
  !*** ./assets/js/plugins/slimscroll/jquery.slimscroll.min.js ***!
  \***************************************************************/
/*! no static exports found */
/***/ (function (module, exports) {

			/*! Copyright (c) 2011 Piotr Rochala (http://rocha.la)
			 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
			 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
			 *
			 * Version: 1.3.0
			 *
			 */
			(function (f) {
				jQuery.fn.extend({
					slimScroll: function (h) {
						var a = f.extend({ width: "auto", height: "250px", size: "4px", color: "#000", position: "right", distance: "1px", start: "top", opacity: 0.4, alwaysVisible: !1, disableFadeOut: !1, railVisible: !1, railColor: "#333", railOpacity: 0.2, railDraggable: !0, railClass: "slimScrollRail", barClass: "slimScrollBar", wrapperClass: "slimScrollDiv", allowPageScroll: !1, wheelStep: 20, touchScrollStep: 200, borderRadius: "7px", railBorderRadius: "7px" }, h); this.each(function () {
							function r(d) {
								if (s) {
									d = d ||
										window.event; var c = 0; d.wheelDelta && (c = -d.wheelDelta / 120); d.detail && (c = d.detail / 3); f(d.target || d.srcTarget || d.srcElement).closest("." + a.wrapperClass).is(b.parent()) && m(c, !0); d.preventDefault && !k && d.preventDefault(); k || (d.returnValue = !1)
								}
							} function m(d, f, h) {
								k = !1; var e = d, g = b.outerHeight() - c.outerHeight(); f && (e = parseInt(c.css("top")) + d * parseInt(a.wheelStep) / 100 * c.outerHeight(), e = Math.min(Math.max(e, 0), g), e = 0 < d ? Math.ceil(e) : Math.floor(e), c.css({ top: e + "px" })); l = parseInt(c.css("top")) / (b.outerHeight() - c.outerHeight());
								e = l * (b[0].scrollHeight - b.outerHeight()); h && (e = d, d = e / b[0].scrollHeight * b.outerHeight(), d = Math.min(Math.max(d, 0), g), c.css({ top: d + "px" })); b.scrollTop(e); b.trigger("slimscrolling", ~~e); v(); p()
							} function C() { window.addEventListener ? (this.addEventListener("DOMMouseScroll", r, !1), this.addEventListener("mousewheel", r, !1), this.addEventListener("MozMousePixelScroll", r, !1)) : document.attachEvent("onmousewheel", r) } function w() {
								u = Math.max(b.outerHeight() / b[0].scrollHeight * b.outerHeight(), D); c.css({ height: u + "px" });
								var a = u == b.outerHeight() ? "none" : "block"; c.css({ display: a })
							} function v() { w(); clearTimeout(A); l == ~~l ? (k = a.allowPageScroll, B != l && b.trigger("slimscroll", 0 == ~~l ? "top" : "bottom")) : k = !1; B = l; u >= b.outerHeight() ? k = !0 : (c.stop(!0, !0).fadeIn("fast"), a.railVisible && g.stop(!0, !0).fadeIn("fast")) } function p() { a.alwaysVisible || (A = setTimeout(function () { a.disableFadeOut && s || (x || y) || (c.fadeOut("slow"), g.fadeOut("slow")) }, 1E3)) } var s, x, y, A, z, u, l, B, D = 30, k = !1, b = f(this); if (b.parent().hasClass(a.wrapperClass)) {
								var n = b.scrollTop(),
									c = b.parent().find("." + a.barClass), g = b.parent().find("." + a.railClass); w(); if (f.isPlainObject(h)) { if ("height" in h && "auto" == h.height) { b.parent().css("height", "auto"); b.css("height", "auto"); var q = b.parent().parent().height(); b.parent().css("height", q); b.css("height", q) } if ("scrollTo" in h) n = parseInt(a.scrollTo); else if ("scrollBy" in h) n += parseInt(a.scrollBy); else if ("destroy" in h) { c.remove(); g.remove(); b.unwrap(); return } m(n, !1, !0) }
							} else {
								a.height = "auto" == a.height ? b.parent().height() : a.height; n = f("<div></div>").addClass(a.wrapperClass).css({ position: "relative", width: a.width, height: a.height }); b.css({ width: a.width, height: a.height }); var g = f("<div></div>").addClass(a.railClass).css({ width: a.size, height: "100%", position: "absolute", top: 0, display: a.alwaysVisible && a.railVisible ? "block" : "none", "border-radius": a.railBorderRadius, background: a.railColor, opacity: a.railOpacity, zIndex: 90 }), c = f("<div></div>").addClass(a.barClass).css({
									background: a.color, width: a.size, position: "absolute", top: 0, opacity: a.opacity, display: a.alwaysVisible ?
										"block" : "none", "border-radius": a.borderRadius, BorderRadius: a.borderRadius, MozBorderRadius: a.borderRadius, WebkitBorderRadius: a.borderRadius, zIndex: 99
								}), q = "right" == a.position ? { right: a.distance } : { left: a.distance }; g.css(q); c.css(q); b.wrap(n); b.parent().append(c); b.parent().append(g); a.railDraggable && c.bind("mousedown", function (a) {
									var b = f(document); y = !0; t = parseFloat(c.css("top")); pageY = a.pageY; b.bind("mousemove.slimscroll", function (a) { currTop = t + a.pageY - pageY; c.css("top", currTop); m(0, c.position().top, !1) });
									b.bind("mouseup.slimscroll", function (a) { y = !1; p(); b.unbind(".slimscroll") }); return !1
								}).bind("selectstart.slimscroll", function (a) { a.stopPropagation(); a.preventDefault(); return !1 }); g.hover(function () { v() }, function () { p() }); c.hover(function () { x = !0 }, function () { x = !1 }); b.hover(function () { s = !0; v(); p() }, function () { s = !1; p() }); b.bind("touchstart", function (a, b) { a.originalEvent.touches.length && (z = a.originalEvent.touches[0].pageY) }); b.bind("touchmove", function (b) {
									k || b.originalEvent.preventDefault(); b.originalEvent.touches.length &&
										(m((z - b.originalEvent.touches[0].pageY) / a.touchScrollStep, !0), z = b.originalEvent.touches[0].pageY)
								}); w(); "bottom" === a.start ? (c.css({ top: b.outerHeight() - c.outerHeight() }), m(0, !0)) : "top" !== a.start && (m(f(a.start).position().top, null, !0), a.alwaysVisible || c.hide()); C()
							}
						}); return this
					}
				}); jQuery.fn.extend({ slimscroll: jQuery.fn.slimScroll })
			})(jQuery);


			/***/
		})

	/******/
});